generation type auto vs identity vs sequence